Uncurrying for Termination

نویسندگان

  • Nao Hirokawa
  • Aart Middeldorp
  • Harald Zankl
چکیده

First-order applicative term rewrite systems provide a natural framework for modeling higher-order aspects. In this paper we present a transformation from untyped applicative term rewrite systems to functional term rewrite systems that preserves and reflects termination. Our transformation is less restrictive than other approaches. In particular, head variables in right-hand sides of rewrite rules can be handled. To further increase the applicability of our transformation, we present a version for dependency pairs.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Generalized and Formalized Uncurrying

Uncurrying is a termination technique for applicative term rewrite systems. During our formalization of uncurrying in the theorem prover Isabelle, we detected a gap in the original pen-and-paper proof which cannot directly be filled without further preconditions. Our final formalization does not demand additional preconditions, and generalizes the existing techniques since it allows to uncurry ...

متن کامل

Uncurrying for Innermost Termination and Derivational Complexity

First-order applicative term rewriting systems provide a natural framework for modeling higher-order aspects. In earlier work we introduced an uncurrying transformation which is termination preserving and reflecting. In this paper we investigate how this transformation behaves for innermost termination and (innermost) derivational complexity. We prove that it reflects innermost termination and ...

متن کامل

Function Spaces in the Category of Directed Suprema Preserving Maps1

provide the notation and terminology for this paper. Let F be a function. We say that F is uncurrying if and only if the conditions (Def. 1) are satisfied. (Def. 1)(i) For every set x such that x ∈ dom F holds x is a function yielding function, and (ii) for every function f such that f ∈ dom F holds F(f) = uncurry f. We say that F is currying if and only if the conditions (Def. 2) are satisfied...

متن کامل

A verified framework for higher-order uncurrying optimizations

Function uncurrying is an important optimization for the efficient execution of functional programming languages. This optimization replaces curried functions by uncurried, multiple-argument functions, while preserving the ability to evaluate partial applications. First-order uncurrying (where curried functions are optimized only in the static scopes of their definitions) is well understood and...

متن کامل

The Characterization of the Continuity of Topologies1

The following propositions are true: (1) Let S, T be non empty relational structures and f be a map from S into T. Suppose f is one-to-one and onto. Then f · f −1 = id T and f −1 · f = id S and f −1 is one-to-one and onto. (2) Let X, Y be non empty sets, Z be a non empty relational structure, S be a non empty relational substructure of Z [: X,Y :] , T be a non empty relational substructure of (...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008